/*
Copyright (c) [2019年5月1日] [吴超]
[MBT_Studio] is licensed under Mulan PSL v2.
You can use this software according to the terms and conditions of the Mulan PSL v2.
You may obtain a copy of Mulan PSL v2 at:
		 http://license.coscl.org.cn/MulanPSL2
THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
See the Mulan PSL v2 for more details.
*/
#pragma once


#include <UI/UI.h>



struct S_时间轴帧绘制信息 {
	int32 m_帧数字步进;
	float32 m_线数量;
	float32 m_帧绘制间隔宽度;
	vec2 m_缩放循环步进;

	static float32	g尺线绘制间隔;
	static float32	g时间区间缩放;

	S_时间轴帧绘制信息() {
		m_线数量 = 1;
		m_帧数字步进 = 1;
		m_帧绘制间隔宽度 = 20;
		m_缩放循环步进 = { 1,1 };
	}

	void f_时间区间改变();
};

void f_时间轴_更新状态栏(bool p);

void f_时间工作区_刷新时间线绘制(C_Widget* self, ui_绘制模板_画预设图形& 绘制模板, int32 步进, float32 height);
void f_时间工作区_时间线绘制(C_Widget* self, ui_绘制模板_画预设图形& 绘制模板);

mat3X2 f_时间工作区_时间区间绘制矩阵(C_Widget* self);

float32 f_时间工作区_从鼠标位置计算时间帧(C_Widget* self);

float32	f_时间工作区_计算尺线绘制间隔(float32 区间变换后宽度);
vec2	f_时间工作区_计算尺线绘制间隔(vec2 区间变换后宽度);
vec2	f_时间工作区_计算刻度文本_数量步进(float32 帧绘制间隔宽度, float32 刻度线步进宽度);



E_事件是否传递 f_工作区_横向缩放页面视口(C_Widget* self, uint8 状态);
E_事件是否传递 f_工作区_纵向缩放页面视口(C_Widget* self, uint8 状态);
E_事件是否传递 f_工作区_缩放页面视口(C_Widget* self, uint8 状态);





